//
//  XJSCTopicTableViewProxy.m
//  XinJiangMall
//
//  Created by RaoBo on 2018/6/26.
//  Copyright © 2018年 Tzyang. All rights reserved.
//

#import "XJSCTopicTableViewProxy.h"
#import "XJShouCangTopicsModel.h"
#import "XJSCTopicsCell.h"


@implementation XJSCTopicTableViewProxy

#pragma mark -  UITableViewDataSource
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    return self.dataArray.count;
}

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    
    XJSCTopicsCell *cell = [tableView dequeueReusableCellWithIdentifier:@"XJSCTopicsCell"];
    cell.selectionStyle = UITableViewCellSelectionStyleNone;
    
    //cell赋值
    XJShouCangTopicsModel *model = self.dataArray[indexPath.row];
    cell.model = model;
    
    //根据编辑状态判断是否显示选择按钮 注意:要取反。
    cell.selBtn.hidden = !self.isEditing;
    
    return cell;
}

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
    return 120;
}

#pragma mark - UITableViewDelegate
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    
    //作用:需要一个变量记录cell的选中状态,并通过block将该结果传递出去。不得已为之。状态实在是太多了。
    BOOL tempSelected = NO;
    
    XJShouCangTopicsModel *model = self.dataArray[indexPath.row];

    //如果是编辑状态
    if (self.isEditing) {
//        XJLog(@"收藏的帖子-编辑状态:%ld",indexPath.row);

        //取消这一行的选中
        [tableView deselectRowAtIndexPath:indexPath animated:YES];
        
        //模型打钩属性取反
        model.checked = !model.isChecked;
        
        tempSelected = model.checked;
        
        //刷新表格
        [tableView reloadData];
    }
    
    // block回调
    if (self.sctopicsTableViewProxySelectedCellBlock) {
        
        
        XJLog(@"%@",model.invitation_id);
        
        self.sctopicsTableViewProxySelectedCellBlock(indexPath, self.isEditing, tempSelected, model);
    }
}

@end
